<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core"   
      xmlns:jb="http://java.sun.com/jsf/composite/componentes"
      xmlns:p="http://primefaces.org/ui">

    <SCRIPT language="JavaScript" type="text/javascript">
                   
        function handleMaterialRequest(xhr, status, args) {
            if(args.validationFailed || !args.CallbackParam) {  
     
            } else {                              
                carDialogMaterial.hide();  
                jQuery('#btnGuardarMaterial').fadeOut();
            }  
        }  
    </SCRIPT>
    <h:form onsubmit="return checkSubmit();"  id="frmPopupMaterial">
        <h:panelGrid id="pgFormMaterial" frame="box">
            <h:panelGrid  columns="6" cellpadding="4">
                <h:outputLabel value="#{i18n['general.label.id']}" styleClass="label" rendered="#{sessionMBean.accionDetalle != applicationMBean.nuevo}"/>
                <h:outputText value="#{productoMBean.materialDto.id}" rendered="#{sessionMBean.accionDetalle != applicationMBean.nuevo}" styleClass="txtCampo"/>

                <h:outputLabel for="itProducto" styleClass="label" value="#{i18n['material.material']}"/>                    
                <p:autoComplete id="itProducto" value="#{productoMBean.materialDto.materialDto}" completeMethod="#{productoMBean.autoCompletarProductoMenos}"
                                label="#{i18n['material.material']}" readonly="#{sessionMBean.accionDetalle == applicationMBean.ver}" maxResults="10" minQueryLength="#{applicationMBean.minQueryLengthAutoComplete}" queryDelay="1" 
                                converter="productoConvert" var="sn" itemLabel="#{sn.descripcion}" required="true" itemValue="#{sn}" size="50" forceSelection="true"> 
                    <p:ajax event="itemSelect" listener="#{productoMBean.handleMaterialChange}" update=":msjDialogMaterial" />
                    <p:column style="#{applicationMBean.estiloObligatorio}" > 
                        #{sn.tipoProductoTexto} || #{sn.descripcion}
                    </p:column> 
                </p:autoComplete>

                <h:outputLabel for="itUnidadMedida" styleClass="label" value="#{i18n['material.unidad.medida']}"/>                    
                <p:selectOneMenu id="itUnidadMedida" value="#{productoMBean.materialDto.unidadMedidaDto}"  converter="unidadMedidaConvert" style="#{applicationMBean.estiloObligatorio}" 
                                 disabled="#{sessionMBean.accion == applicationMBean.ver}" required="true">
                    <f:selectItems value="#{productoMBean.listaUnidadMedida}" var="unidadMedidaDto" itemLabel="#{unidadMedidaDto.nombre}" itemValue="#{unidadMedidaDto}" />                        
                </p:selectOneMenu>

                <h:outputLabel for="itCantidad" value="#{i18n['material.cantidad']}" styleClass="label"/>
                <p:inputText id="itCantidad" label="#{i18n['material.cantidad']}" style="#{applicationMBean.estiloObligatorio}"
                             value="#{productoMBean.materialDto.cantidad}"  readonly="#{sessionMBean.accionDetalle == applicationMBean.ver}"
                             onkeypress="return fn_validaTecla('decimal',this)"
                             required="true" size="10" >
                    <f:validateLength minimum="1" maximum="9" />
                    <f:convertNumber pattern="#{applicationMBean.formatoMontos}" />
                </p:inputText>  

                <h:outputLabel styleClass="label" value="#{i18n['general.label.activo']}"/>                    
                <p:selectBooleanCheckbox value="#{productoMBean.materialDto.estado}"  style="#{applicationMBean.estilo}"  disabled="#{sessionMBean.accionDetalle == applicationMBean.ver}"/>
            </h:panelGrid>

            <p:separator />

            <h:outputLabel value="#{i18n['general.label.campos.auditoria']}" styleClass="subTitulo" rendered="#{productoMBean.materialDto.id!=null}"/>
            <p:separator rendered="#{productoMBean.materialDto.id!=null}"/>
            <h:panelGrid id="pgCamposAuditoria" columns="6" cellspacing="10" rendered="#{productoMBean.materialDto.id!=null}">
                <h:outputLabel styleClass="label" value="#{i18n['general.label.usuario.creacion']}"/>
                <h:outputLabel styleClass="txtCampo" value="#{productoMBean.materialDto.usuarioCreacionDto.descripcion}"/>
                <h:outputLabel styleClass="label" value="#{i18n['general.label.fecha.creacion']}"/>
                <h:outputLabel styleClass="txtCampo" value="#{productoMBean.materialDto.fechaCreacion}">
                    <f:convertDateTime pattern="#{applicationMBean.formatoFechaHoraSegundos}"  timeZone="#{applicationMBean.timeZone}"/>
                </h:outputLabel>                            
                <h:outputLabel styleClass="label" value="#{i18n['general.label.terminal.creacion']}"/>
                <h:outputLabel styleClass="txtCampo" value="#{productoMBean.materialDto.terminalCreacion}"/>
                <h:outputLabel styleClass="label" value="#{i18n['general.label.usuario.modificacion']}"/>
                <h:outputLabel styleClass="txtCampo" value="#{productoMBean.materialDto.usuarioDto.descripcion}"/>
                <h:outputLabel styleClass="label" value="#{i18n['general.label.fecha.modificacion']}"/>
                <h:outputLabel styleClass="txtCampo" value="#{productoMBean.materialDto.fecha}">
                    <f:convertDateTime pattern="#{applicationMBean.formatoFechaHoraSegundos}"  timeZone="#{applicationMBean.timeZone}"/>
                </h:outputLabel>                            
                <h:outputLabel styleClass="label" value="#{i18n['general.label.terminal.modificacion']}"/>
                <h:outputLabel styleClass="txtCampo" value="#{productoMBean.materialDto.terminal}"/>
            </h:panelGrid>


            <p:panel id="pnlAcciones">
                <h:panelGrid columns="10">
                    <p:commandButton id="btnGuardarMaterial" update=":msjDialogMaterial,:tabPrincipalDeta:frmMaterial:tblMaterial"
                                     title="#{i18n['general.button.guardar.tip']}"
                                     ajax="true" 
                                     style="#{applicationMBean.estilosBtnGuardar}"
                                     rendered="#{sessionMBean.accionDetalle != applicationMBean.ver}"
                                     icon="ui-icon ui-icon-disk" 
                                     value="#{i18n['general.button.guardar']}" 
                                     action="#{productoMBean.guardarMaterialProducto}"
                                     oncomplete="handleMaterialRequest(xhr, status, args)">
                    </p:commandButton> 
                    <p:commandButton title="#{i18n['bitacora.ver.historial']}"
                                     icon="ui-icon ui-icon-calculator"
                                     style="#{applicationMBean.estilosBtnHistorial}"
                                     value="#{i18n['bitacora.ver.historial']}"                                                                                                           
                                     ajax="true"
                                     rendered="#{productoMBean.materialDto.id!=null}"
                                     oncomplete="dlgBitacoraEntidad.show()"                                                       
                                     update=":frmPopupBitacoras:pgFormPopupBitacoras"
                                     actionListener="#{productoMBean.verBitacoraMaterialProducto}">                                    
                    </p:commandButton>  
                </h:panelGrid>
            </p:panel>
        </h:panelGrid>
    </h:form>
</html>